home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2007 September / PCWSEP07.iso / Software / Linux / Linux Mint 3.0 Light / LinuxMint-3.0-Light.iso / casper / filesystem.squashfs / var / lib / dpkg / info / tzdata.postinst < prev    next >
Encoding:
Text File  |  2007-04-23  |  2.2 KB  |  94 lines

  1. #!/bin/bash
  2. set -e
  3. export LC_ALL=C
  4.  
  5. type=$1
  6. preversion=$2
  7.  
  8. zone_banner() {
  9.     TZBase=$(LC_ALL=C TZ=UTC0 date)
  10.     UTdate=$(TZ=UTC0 date -d "$TZBase")
  11.     TZdate=$(TZ="$timezone" date -d "$TZBase")
  12.     extra_info="
  13. Local time is now:      $TZdate.
  14. Universal Time is now:  $UTdate."
  15.     echo "Current default timezone: '$timezone'.$extra_info"
  16.     echo "Run 'tzconfig' if you wish to change it."
  17. }
  18.  
  19. set_timezone() {
  20.     frontend=`echo "$DEBIAN_FRONTEND" | tr '[:upper:]' '[:lower:]'`
  21.     if [ "$frontend" = noninteractive ]; then
  22.         echo "Non-interactive mode, setting timezone to UTC.  Run tzconfig to change."
  23.         echo "UTC" >/etc/timezone
  24.         ln -sf /usr/share/zoneinfo/UTC /etc/localtime
  25.     else
  26.         echo "Running 'tzconfig' to set this system's timezone."
  27.         /usr/sbin/tzconfig
  28.     fi
  29. }
  30.  
  31. realpath()
  32. {
  33.     fname=${1%/} # strips trailing '/'
  34.     while [ -L "$fname" ]; do
  35.     oldfname="$fname"
  36.     fname="$(command ls -l $fname)"
  37.     fname="${fname#*\> }"
  38.     if [ "$fname" = . ] ; then
  39.         fname="$(dirname $oldfname)"
  40.     elif echo $fname | grep -vq '^/' - ; then
  41.         fname="$(dirname $oldfname)/$fname"
  42.     fi
  43.     done
  44.     pushd $(dirname $fname) > /dev/null
  45.     fname=$(pwd -P)/$(basename $fname)
  46.     popd > /dev/null
  47.     echo $fname
  48. }
  49.  
  50. if [ "$type" = "configure" ]
  51. then
  52.     if [ -f /etc/timezone ]; then
  53.     timezone=$(head -n 1 /etc/timezone | sed -e "s/ .*//")
  54.     else
  55.     timezone=Factory
  56.     fi
  57.     if [ "$timezone" = Factory ]; then
  58.     if [ -L /etc/localtime ]; then
  59.         localtime_link=$(realpath /etc/localtime)
  60.         if [ -f "$localtime_link" ]; then
  61.         link_not_dangling=true
  62.         fi
  63.         if [ "$link_not_dangling" = true ]; then
  64.         timezone=$(echo $localtime_link | sed 's%^/usr/share/zoneinfo/%%')
  65.         fi
  66.     fi
  67.     fi
  68.     if [ -f /usr/share/zoneinfo/$timezone ] && [ "$timezone" != Factory ]
  69.     then
  70. #    zic -l $timezone
  71.     rm -f /etc/localtime && \
  72.     cp -f /usr/share/zoneinfo/$timezone /etc/localtime
  73.     zone_banner
  74.     # Handle problem caused by lame old tzconfig.
  75.     elif [ "$timezone" = "US/Pacific-New" ]
  76.     then
  77.     echo "US/Pacific" > /etc/timezone
  78. #    zic -l US/Pacific
  79.     rm -f /etc/localtime && \
  80.     cp -f /usr/share/zoneinfo/US/Pacific /etc/localtime
  81.     zone_banner
  82.     else
  83.     set_timezone
  84.     fi
  85.     if [ "$(date +%Z)" = "/etc/localtime" ]; then
  86.     set_timezone
  87.     fi
  88. fi
  89.  
  90.  
  91.  
  92.  
  93. exit 0
  94.